home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / inet / internet-drafts / draft-ietf-osids-ipinfo-x500-dir-00.txt < prev    next >
Text File  |  1993-09-02  |  41KB  |  1,255 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. OSI-DS Working Group                                    Thomas Johannsen
  8. INTERNET-DRAFT                                      (Dresden University)
  9.                                                          Glenn Mansfield
  10.                                                       (AIC Systems Lab.)
  11.                                                             Mark Kosters
  12.                                                      (Network Solutions)
  13.                                                        Srinivas Sataluri
  14.                                                 (AT&T Bell Laboratories)
  15.                                                           September 1993
  16.  
  17.  
  18.  
  19.            Representing IP Information in the X.500 Directory
  20.  
  21.  
  22.                       Draft document OSI-DS-38-02
  23.  
  24.  
  25. Status of this Memo
  26.  
  27.    This document is an  Internet  Draft.  Internet  Drafts  are  working
  28.    documents  of  the Internet Engineering Task Force (IETF), its Areas,
  29.    and its Working Groups. Note that other groups  may  also  distribute
  30.    working documents as Internet Drafts.
  31.  
  32.    Internet Drafts are draft  documents  valid  for  a  maximum  of  six
  33.    months.  Internet  Drafts  may  be updated, replaced, or obsoleted by
  34.    other documents at any time.  It is not appropriate to  use  Internet
  35.    Drafts as reference material or to cite them other than as a "working
  36.    draft" or "work in progress."
  37.  
  38.    To learn the current status of any Internet-Draft, please  check  the
  39.    1id-abstracts.txt  listing  contained  in  the Internet-Drafts Shadow
  40.    Directories on ds.internic.net, nic.nordu.net,  ftp.nisc.sri.com,  or
  41.    munnari.oz.au.
  42.  
  43.  
  44. Abstract
  45.  
  46. This document describes the objects  necessary  to  include  information
  47. about  IP networks and IP numbers in the X.500 Directory. It extends the
  48. work "Charting networks in the Directory" [ND] where a general framework
  49. is  presented   for representing networks in the Diretory by applying it
  50. to work of IP network assigning authorities,  NICs,  as  well  as  other
  51. applications  looking  for  a  mapping  of IP numbers to data of related
  52. networks. Furthermore, Autonomous Systems  and  related  routing  policy
  53. information  can  be  represented  in  the  Directory  along  with their
  54. relationship to networks and organizations.
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64. Expires: March 1, 1994                                        [Page 1]
  65.  
  66.  
  67.  
  68.  
  69.  
  70. Internet Draft                 OSI-DS 38                  September 1993
  71.  
  72.  
  73. Contents
  74.  
  75.  
  76.       1. Introduction                                     2
  77.       2. IP images of networks                            3
  78.       2.1 IP network image                                3
  79.       2.2 IP node image                                   4
  80.       2.3 IP network interface image                      5
  81.       2.4 Autonomous Systems                              6
  82.       3. Number assignment information                    8
  83.       3.1 Delegated Block object                          8
  84.       3.2 IP Group object                                 9
  85.       3.3 IP Reference object                            10
  86.       3.4 AS Block object                                10
  87.       3.5 AS Reference object                            10
  88.       4. Directory tree                                  11
  89.       4.1 IP image objects                               11
  90.       4.2 AS objects                                     11
  91.       4.3 namespace objects                              11
  92.       4.4 Relationship to organizational entries         13
  93.       5. Security Considerations                         14
  94.       6. Author's Addresses                              14
  95.       References                                         14
  96.       Appendix: OID tables                               16
  97.  
  98.  
  99. 1. Introduction
  100.  
  101. Information related to the Internet Network  Infrastructure  is  created
  102. and  stored by a number of different organizations, such as the Internet
  103. Assigned Numbers  Authority  (IANA),  Internet  Registry  (IR),  Network
  104. Information  Centers  (NICs),  and  the NSFNET Network Operations Center
  105. (NOC).  This information is generally "mastered" (stored and maintained)
  106. by  these  organizations  on a centralized basis, i.e. there is a single
  107. place to look for a definitive list of  entries  for  these  categories.
  108. This  has worked well in the past but given the tremendous growth of the
  109. Internet and its number of users and networks, it is  essential  that  a
  110. distributed schema be used.
  111.  
  112. The X.500 Directory offers the appropriate technology  for  implementing
  113. this distributed method of managing network infrastructure information.
  114.  
  115. The following goals are addressed in this document:
  116.  
  117.  o Provision of IP specific images of network elements
  118.  o Mapping from Network Number to network, owner, provider etc.
  119.  o Support of delegation of IP address blocks
  120.  o Storage of high-level routing policies and AS information
  121.  o Support of "classless" network address formats
  122.  o Provision of several organizational images of a network
  123.  
  124. It may be noted that the document basically consists of  two  parts.  In
  125. the  first  part,  an  IP  specific  extension  of the general framework
  126. "Charting networks in the Directory" [ND] is given. Objects  defined  by
  127.  
  128.  
  129.  
  130. Expires: March 1, 1994                                        [Page 2]
  131.  
  132.  
  133.  
  134.  
  135.  
  136. Internet Draft                 OSI-DS 38                  September 1993
  137.  
  138.  
  139. the  application  of  this  framework  are  related to IP numbers. An IP
  140. namespace is defined in the second part of this paper, referring  to  IP
  141. network elements defined at the beginning.
  142.  
  143.  
  144. 2. IP images of networks
  145.  
  146. As defined in [ND], networks are modelled as a set  of  subnetworks  and
  147. nodes,  called network elements in the remainder. To obtain a particular
  148. view of a network element, images  were  introduced.  Below,  images  of
  149. network  elements  for an IP specific view are defined. Please note that
  150. images contain  references  to  underlying  physical  information  about
  151. elements.
  152.  
  153. In the remainder, ipStringSyntax is  used  as  attribute  type  for  all
  154. attributes  that  are  to  hold  an  IP number. Currently, there are two
  155. definitions for a syntax like this:
  156.  
  157.  o IpAddress as of RFC1155
  158.  o ip as of RFC1278
  159.  
  160. It is suggested to use CaseIgnoreStringSyntax  for  implementations  for
  161. the  time  being  with  the  convention  to  use the ordinary IP syntax.
  162. Nevertheless,  an  OID  has  been  reserved  for   ipStringSyntax   (see
  163. Appendix).
  164.  
  165.  
  166. 2.1 IP network image
  167.  
  168. IP network image is one application  of  network  images  and  therefore
  169. inherits  the networkImageClass. This class is given below for reference
  170. only, its definition can be found in [ND].
  171.  
  172. networkImage OBJECT CLASS
  173.  SUBCLASS of ImageCommunicationObject
  174.  MAY CONTAIN
  175.   externalGateway :: distinguishedNameSyntax,
  176.    /* points to one or more nodes that act
  177.       as gateway for the protocol application
  178.       this image refers to */
  179.  
  180. An IP network combines all  network  elements  that  have  a  common  IP
  181. network  number.  Presently,  IP  network  numbers  fall into one of the
  182. classes A, B, or C. However, sub- and supernetworking  is  already  done
  183. broadly,  and  classless  networks  numbers  are expected to be assigned
  184. soon. [RFC1466] proposes to assign bitwise contiguous blocks  of  class-
  185. C-addresses  to all networks with more than 255 nodes. The definition of
  186. IP network, therefore, is always related to common  network  number  and
  187. network mask.
  188.  
  189. IP networks have a very close relationship to the  Domain  Name  System.
  190. Several  attributes  are  introduced  to  take  care of these relations.
  191. Though we do not intend to abolish the existing DNS service, the  schema
  192. defined here is able to provide the mapping IP number to domain name and
  193.  
  194.  
  195.  
  196. Expires: March 1, 1994                                        [Page 3]
  197.  
  198.  
  199.  
  200.  
  201.  
  202. Internet Draft                 OSI-DS 38                  September 1993
  203.  
  204.  
  205. vice versa.
  206.  
  207. An IP network image object as  defined  below  is  intended  to  provide
  208. technical  and  administrative  data for one IP network. Attributes hold
  209. information that a NIC-WHOIS server would reveal for  the  network,  and
  210. more.
  211.  
  212. ipNetworkImage OBJECT CLASS
  213.  SUBCLASS of NetworkImage
  214.  MUST CONTAIN
  215.   ipNetworkImageName :: CaseIgnoreString,
  216.    /* common name */
  217.   ipNwNumber :: IPStringSyntax,
  218.    /* the IP network number for
  219.       this (sub)network */
  220.   ipNwMask :: IPStringSyntax
  221.    /* mask that applies to ipNwNumber
  222.       in order to define classless
  223.       network number; also used for routing */
  224.  
  225.  MAY CONTAIN
  226.  /* DNS related info ; e.g. - */
  227.   associatedDomain :: CaseIgnoreStringSyntax,
  228.    /* the domain name associated to this IP network;
  229.       As there is not always a 1:1 mapping between traditional
  230.       IP numbers and domain names, the name given here
  231.       should contain the "closest match".
  232.       1) (sub)network does not have a domain name
  233.          of its own, but is part of a bigger domain:
  234.          take name of that domain
  235.       2) network is divided into several domains,
  236.          therefore having more than one domain name:
  237.          list all of them.
  238.       Note: a reverse mapping of domain names to
  239.       networks/nodes can be achieved by a modified
  240.       implementation of RFC1279 */
  241.   inAddrServer :: DistinguishedNameSyntax,
  242.    /* refers to the ipNodeImageObject of the
  243.       inaddr Server that holds information about
  244.       this network */
  245.  /* routing policy; e.g. - */
  246.   asNumber :: integerStringSyntax,
  247.    /* number of Autonomous System this network belongs to */
  248.   acceptedUsagePolicy :: caseIgnoreStringSyntax,
  249.    /* semantics to be defined */
  250.  /* Any other - */
  251.   provider   :: DistinguishedNameSyntax,
  252.    /* points to network provider */
  253.   onlineDate :: uTCTimeSyntax
  254.    /* date when network got connected to the Internet */
  255.  
  256.  
  257. 2.2 IP node image
  258.  
  259.  
  260.  
  261.  
  262. Expires: March 1, 1994                                        [Page 4]
  263.  
  264.  
  265.  
  266.  
  267.  
  268. Internet Draft                 OSI-DS 38                  September 1993
  269.  
  270.  
  271. If  a  node  in  the  network   is   running   the   IP   protocol,   an
  272. ipNodeImageObject  should  be  created  for  this  node. This image is a
  273. subclass of  nodeImageClass  and  holds  IP  specific  information.  The
  274. nodeImageClass  is given below for reference only, its definition can be
  275. found in [ND].
  276.  
  277. nodeImage OBJECT CLASS
  278.  SUBCLASS of ImageCommunicationObject
  279.   /* no attributes common for all nodeImages have been
  280.      defined yet */
  281.  
  282. An  ipNodeImage  is  used  to  obtain   technical   and   administrative
  283. information on a host. The object is defined as follows:
  284.  
  285. ipNodeImage OBJECT CLASS
  286.  SUBCLASS of NodeImage
  287.  MUST CONTAIN
  288.   ipNodeName :: CaseIgnoreString
  289.    /* common name, it is advised to use
  290.       the hostname for this purpose */
  291.  MAY CONTAIN
  292.   protocol :: CaseIgnoreString,
  293.    /* name and version of IP protocol running */
  294.   domainName :: CaseIgnoreString,
  295.    /* the complete domain name of this node;
  296.       CNAMEs can be stored additionally to the
  297.       DNS A record name;
  298.       further relationships, like MX record entries,
  299.       should be taken care of by the domain name tree
  300.       according to RFC 1279 */
  301.  
  302.  
  303. 2.3 IP network interface image
  304.  
  305. The most important IP related information of a node (its  IP  addresses)
  306. is  registered  with  ipNetworkInterfaceImageObjects.  This  picture  is
  307. accurate as a node can have several IP addresses, but at  most  one  per
  308. interface.  Furthermore,  it  shows  clearly  the  relationship  between
  309. interface and neighboring IP network.
  310.  
  311. IpNetworkInterfaceImage is a subclass of networkInterfaceImageClass. The
  312. networkInterfaceImageClass  is  given  below  for  reference  only,  its
  313. definition can be found in [ND].  Note that for  ipNetworkInterfaceImage
  314. all    references    are    drawn   in   the   context   of   IP,   i.e.
  315. networkInterfaceAddress  becomes  an  IP  address  and  connectedNetwork
  316. points to an ipNetworkImageObject.
  317.  
  318. networkInterfaceImage OBJECT CLASS
  319.  SUBCLASS of ImageCommunicationObject
  320.  MAY CONTAIN
  321.   networkInterfaceAddress     :: caseIgnoreStringSyntax,
  322.    /* this interfaces address in the context the
  323.       image referes to, e.g. IP number, NSAP */
  324.   connectedNetwork   :: distinguishedNameSyntax
  325.  
  326.  
  327.  
  328. Expires: March 1, 1994                                        [Page 5]
  329.  
  330.  
  331.  
  332.  
  333.  
  334. Internet Draft                 OSI-DS 38                  September 1993
  335.  
  336.  
  337.    /* pointer to networkImageObject that describes
  338.       the network this interface is attached to in terms
  339.       of the protocol or application the images
  340.       indicates */
  341.  
  342. Additionally,   ipNetworkInterfaceImageObject    has    the    following
  343. properties:
  344.  
  345. ipNetworkInterfaceImage OBJECT CLASS
  346.  SUBCLASS of NetworkInterfaceImage
  347.  MUST CONTAIN
  348.   ipNetworkInterfaceName :: CaseIgnoreStringSyntax
  349.    /* It is suggested that the interface name
  350.       is derived from the name of the logical
  351.       device this interface represents for the
  352.       operating system, e.g. le0, COM1 */
  353.  MAY CONTAIN
  354.   ipNwMask ::  IPStringSyntax
  355.    /* mask that applies to networkInterfaceAddress for
  356.       routing of packets to nodes on the connected
  357.       (broadcast) network;
  358.       Note: This is only a fraction
  359.       of the routing table information
  360.       for this interface, namely for one hop. */
  361.  
  362.  
  363. 2.4 Autonomous Systems
  364.  
  365. Autonomous Systems (AS) are defined in asObject which is a  subclass  of
  366. imageCommunicationObject.   It  provides  technical  and  administrative
  367. information of an AS. Furthermore, routing policies can be  stored  with
  368. the  AS  object.  The  definition  of  the AS object is aligned with the
  369. corresponding database object defined in [RIPE-81].
  370.  
  371. as OBJECT CLASS
  372.  SUBCLASS of  ImageCommunicationObject
  373.  MUST CONTAIN
  374.   asNumber :: IntegerStringSyntax
  375.  
  376.  MAY CONTAIN
  377.   asName :: CaseIgnoreStringSyntax,
  378.    /* if there is a name different from AS XXXXX */
  379.   asIn ::  CaseIgnoreStringSyntax,
  380.    /* accepted routes from other AS */
  381.    /* for syntax and semantics refer [RIPE-81] */
  382.   asOut :: CaseIgnoreStringSyntax,
  383.    /* generated routes announced to others */
  384.    /* for syntax and semantics refer [RIPE-81] */
  385.   asDefault ::CaseIgnoreStringSyntax,
  386.    /* how default routing is handled */
  387.    /* for syntax and semantics refer [RIPE-81] */
  388.   asGuardian :: DistinguishedNameSyntax, */
  389.    /* DN of guardian of this AS */
  390.   lastModifiedDate :: UTCtimeSyntax */
  391.  
  392.  
  393.  
  394. Expires: March 1, 1994                                        [Page 6]
  395.  
  396.  
  397.  
  398.  
  399.  
  400. Internet Draft                 OSI-DS 38                  September 1993
  401.  
  402.  
  403.    /* important as routes change frequently */
  404.  
  405. Note that routing policies for an Autonomous System are  represented  by
  406. the {asIn, asOut} attributes of asObject. Due to performance constraints
  407. of present X.500 technology, it will probably not be  used  directly  by
  408. routers  for  dynamic  routing.   However,  it  certainly can be used in
  409. network management systems to  determine  the  allowed  paths  [i.e.  in
  410. accordance  with  published policies] between two networks. This will be
  411. useful in finding alternate paths, and evaluating  the  connectivity  of
  412. networks.
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460. Expires: March 1, 1994                                        [Page 7]
  461.  
  462.  
  463.  
  464.  
  465.  
  466. Internet Draft                 OSI-DS 38                  September 1993
  467.  
  468.  
  469. 3. Number assignment information
  470.  
  471. In the following, Directory objects have been defined  to  represent  IP
  472. and  AS (Autonomous System) namespace in the Directory. Their purpose is
  473. to provide
  474.  
  475.   o mapping from IP number to IP network element (network or node)
  476.   o mapping from IP number to AS number and vice versa
  477.   o assignment and delegation information
  478.  
  479. The need for a global, distributed database  supporting  the  objectives
  480. arises mainly from distributed IP- and AS-number assignment.
  481.  
  482. Describing all IP numbers with one of the  new  objects  delegatedBlock,
  483. ipGroup  and  ipReference  leads  to  the desired information. AS number
  484. information  is  stored  with  the  objects  asBlock  and   asReference.
  485. Furthermore,  all  assigned  numbers  have  some  properties  in common.
  486. Therefore, an objectclass assignedNumberClass is introduced. This  class
  487. exports attributes to delegatedBlock, ipGroup, ipReference, asBlock, and
  488. asReference.
  489.  
  490. AssignedNumberClass is defined as follows (``number'' always  refers  to
  491. IP number of delegatedBlock, network, host, and AS number, resp.):
  492.  
  493. assignedNumberClass OBJECT CLASS
  494.  SUBCLASS of  top
  495.  MAY CONTAIN
  496.   assBy :: DistinguishedNameSyntax,
  497.    /* refers to an organization or organizationalRole
  498.       that assigned the number to assTo (see below) */
  499.   assTo :: DistinguishedNameSyntax,
  500.    /* refers to organization or organizationalRole
  501.       that the number was assigned to. This does not
  502.       imply that assTo "owns" this number now. */
  503.   assDate :: uTCTimeSyntax,
  504.    /* date of assignment for this number */
  505.   nicHandle :: CaseIgnoreStringSyntax,
  506.    /* gives the unique ID for a description
  507.       related to this number.
  508.       format: "handle : nic-domain-name"
  509.       example: MAK21 : rs.internic.net */
  510.   relNwElement ::  DistinguishedNameSyntax,
  511.    /* the network element related to this number
  512.       (network or node) */
  513.  
  514.  
  515. 3.1 Delegated Block object
  516.  
  517. This object provides information on a block of IP addresses delegated to
  518. some  local-authority or service provider. Only contiguous blocks can be
  519. represented with the following schema. If an organization (say,  a  NIC)
  520. has  been  assigned  several  IP  network  numbers  which  do not form a
  521. contiguous block, it might want to use a different form of  representing
  522. that  fact  (e.g. using imageNetworks).  The delegatedBlock object holds
  523.  
  524.  
  525.  
  526. Expires: March 1, 1994                                        [Page 8]
  527.  
  528.  
  529.  
  530.  
  531.  
  532. Internet Draft                 OSI-DS 38                  September 1993
  533.  
  534.  
  535. lower and upper bounds of the block.
  536.  
  537. Note that the above does not make any assumption about the network masks
  538. being  constrained  by byte boundaries. We can thus represent subnetting
  539. within a "network (number)" that often happens within an organization in
  540. the same framework.
  541.  
  542. This schema does lead to some granularity  in  the  otherwise  flat  IP-
  543. number  space. Further, the granularity is significant as it may be used
  544. to identify the administrator of the block - a  service  provider  or  a
  545. domain  manager.  E.g.   it  fits  well  into  the schema of aggregating
  546. networks for routing purposes as has been proposed in [RFC1338].
  547.  
  548. The object delegatedBlock is of the form:
  549.  
  550. delegatedBlock OBJECT CLASS
  551.  SUBCLASS of AssignedNumberClass
  552.  MUST CONTAIN
  553.   delegatedBlockName :: caseIgnoreStringSyntax,
  554.   lowerBound :: IPStringSyntax,
  555.    /* smallest IP address belonging to the
  556.       block, e.g. 195.100.0.0 */
  557.   upperBound :: IPStringSyntax
  558.    /* highest  IP address belonging to the
  559.       block, e.g. 195.103.255.255 */
  560.  
  561. The attribute  relNwElement  (inherited  from  AssignedNumberClass)  can
  562. point  to  a networkImage covering all networks within the block if this
  563. makes sense.
  564.  
  565.  
  566. 3.2 IP Group object
  567.  
  568. This object provides information for an IP network number.  Its  purpose
  569. is basically only to
  570.  
  571.    o show that the number has been assigned, and
  572.    o provide a reference to the descriptive ipNetworkObject for
  573.      this network.
  574.  
  575. Regardless of the actual value of x, IP group objects may exist  for  IP
  576. numbers x.0.0.0, x.y.0.0 and x.y.z.0. This approach includes "classical"
  577. class-A, -B and -C network addresses as well as any kind of  super-  and
  578. subnetworking.
  579.  
  580. The IP group object is a subclass of assignedNumberClass. The  attribute
  581. relNwElement points to an ipNetworkImage as defined above.
  582.  
  583. ipGroup OBJECT CLASS
  584.  SUBCLASS of  AssignedNumberClass
  585.  MUST CONTAIN
  586.   ipGroupName :: IPStringSyntax,
  587.    /* IP number; x.0.0.0 or x.y.0.0 or x.y.z.0
  588.       where x, y, z in 1..255 */
  589.  
  590.  
  591.  
  592. Expires: March 1, 1994                                        [Page 9]
  593.  
  594.  
  595.  
  596.  
  597.  
  598. Internet Draft                 OSI-DS 38                  September 1993
  599.  
  600.  
  601.   ipNwMask   ::    IPStringSyntax
  602.    /* mask that applies to all numbers
  603.       within the group; used to define
  604.       classless networking;  */
  605.  
  606.  
  607. 3.3 IP Reference object
  608.  
  609. There is one IP reference object for each IP host address.  The  purpose
  610. of this object is to
  611.  
  612.   o tell that this IP number is already assigned to a node
  613.   o give a pointer to the related ipNodeImageObject
  614.  
  615. The IP reference  object  is  a  subclass  of  assignedNumberClass.  The
  616. attribute relNwElement points to an ipNodeImage.
  617.  
  618. ipReference OBJECT CLASS
  619.  SUBCLASS of  AssignedNumberClass
  620.  MUST CONTAIN
  621.   ipReferenceName :: IPString
  622.    /* value is always IP address */
  623.  
  624.  
  625. 3.4 AS block object
  626.  
  627. The AS block object is used to show delegation of blocks of  AS  numbers
  628. to  regional  registries. This is similar to delegatedBlock of ipNetwork
  629. numbers.
  630.  
  631. asBlock OBJECT CLASS
  632.  SUBCLASS of  AssignedNumberClass
  633.  MUST CONTAIN
  634.   asBlockName :: caseIgnoreStringSyntax,
  635.   asLowerBound :: integerStringSyntax,
  636.   asUpperBound :: integerStringSyntax
  637.  
  638. An AS block will comprise several consecutive  AS  numbers.  Objects  to
  639. describe these numbers may be stored in asObjects.
  640.  
  641.  
  642. 3.5 AS reference object
  643.  
  644. An AS reference object is used to show that an Autonomous System  number
  645. has  been assigned (and thus can not be given to somebody else). Similar
  646. to ipGroup, asReference does not  contain  technical  details  about  an
  647. autonomous  system  itself  but  rather  points (with relNwElement) to a
  648. descriptive asObject.
  649.  
  650. asReference OBJECT CLASS
  651.  SUBCLASS of  AssignedNumberClass
  652.  MUST CONTAIN
  653.   asNumber :: integerStringSyntax
  654.  
  655.  
  656.  
  657.  
  658. Expires: March 1, 1994                                       [Page 10]
  659.  
  660.  
  661.  
  662.  
  663.  
  664. Internet Draft                 OSI-DS 38                  September 1993
  665.  
  666.  
  667. 4. Directory tree
  668.  
  669.  
  670.                               root
  671.                                |
  672.                  +-------------+---------------+
  673.                  |                             |
  674.                 c=                         o=Internet
  675.                  |                             |
  676.            +-----+------+               +------+-------+
  677.            |            |               |              |
  678.           ipNw=       as=             dbl=           asB=
  679.            |                            |              |
  680.           ipNd=                       ipG=           asRef=
  681.            |                            |
  682.           ipNwIf=                     ipRef=
  683.  
  684.      Figure 1: Overall relationship of objects.
  685.  
  686.  
  687. 4.1 IP image objects
  688.  
  689. According to [ND], IP  image  entries  will  be  stored  underneath  the
  690. organization  /  organizationalUnit  entry of the entity responsible for
  691. that network. The case that such an entry does  not  yet  exist  in  the
  692. white-pages pilot is discussed in 4.4 below.
  693.  
  694.  
  695. 4.2 AS objects
  696.  
  697. The technical and administrative  description  of  an  AS  is  basically
  698. maintained  by  NICs, network providers, or other special organizations.
  699. It is suggested that these organizations build a subtree for information
  700. on AS which they are responsible for.
  701.  
  702.  
  703. 4.3 Namespace objects
  704.  
  705. The new IP namespace objects build a single tree in the Directory. It is
  706. suggested  that  this  tree  will have a root of type organizationalUnit
  707. within @o=Internet@ou=Network Information.
  708.  
  709.   objectClass= organizationalUnit
  710.   organizationalUnitName= IP networks
  711.   description= root of IP number tree
  712.  
  713. The tree is built under an administrative and an implementational  view.
  714. Nowadays,  network  numbers  usually  are  assigned  to organizations by
  715. (national) Network Information Centers (NIC) which themselves have got a
  716. block  of IP network numbers assigned from another authority (e.g. IR at
  717. top level). This concept of delegated blocks falling  apart  in  smaller
  718. delegated  blocks  and IP network numbers is used to model the Directory
  719. tree. Thus, an ipGroup object is always subordinate of a delegated block
  720. object  (namely  the  delegated block including this IP number). Network
  721.  
  722.  
  723.  
  724. Expires: March 1, 1994                                       [Page 11]
  725.  
  726.  
  727.  
  728.  
  729.  
  730. Internet Draft                 OSI-DS 38                  September 1993
  731.  
  732.  
  733. numbers that were directly assigned by a top-level authority, i.e.  have
  734. not been object of a delegation to a local assigning authority, will all
  735. be at one level in the Directory. Already today, however, we  find  many
  736. delegations within the traditional class A-, B- and C-addresses.  Such a
  737. delegation is represented  by  a  delegated  block  object,  having  the
  738. assigned IP network numbers as subordinates. Also, part of the block can
  739. be further delegated to another authority, leading to another  delegated
  740. block   object  within  the  parent  delegated  block's  tree.  Usually,
  741. subordinates of  ipGroup  objects  are  ipReferences,  i.e.   single  IP
  742. addresses  as  assigned  to  nodes. To support subnetworking, it is also
  743. allowed to  divide  ipGroups  into  several  subnetwork  ipGroups,  each
  744. representing  an  IP  subnetwork.  In such cases, subnetwork numbers are
  745. given as subordinates to the assigned IP network number.  Network  masks
  746. clarify what the subnetwork addresses are.
  747.  
  748.                          ou=IP networks
  749.                                |
  750.            +-------------------+-----------------------+
  751.           /                    |                        \
  752.                   dbl=150.0.0.0-150.100.0.0
  753.                                |
  754.            +-------------------+-----------------------+
  755.           /                    |                        \
  756.                          ipG=150.80.0.0
  757.                                |
  758.            +-------------------+-----------------------+
  759.           /                    |                        \
  760.                          ipG=150.80.240.0
  761.                                |
  762.            +-------------------+-----------------------+
  763.           /                    |                        \
  764.    ipRef=150.80.254.1    ipRef=150.80.254.2      ipRef=150.80.254.3
  765.  
  766.       Figure 2: Example population of IP namespace tree according
  767.                 to delegation and subnetworking.
  768.  
  769. For some applications, the separation of  ipImage  (description  of  the
  770. network)  and  ipGroup  (description of the namespace element) will bear
  771. disadvantages in the look-up procedure. In that case one might think  of
  772. combining  both  object  classes  with  the  aim  to  provide one object
  773. describing administrative and technical data for an IP network.
  774.  
  775. As Autonomous Systems are an additional namespace  to  the  existing  IP
  776. number  space,  they  should go into a separate subtree. It is suggested
  777. that  this  is  an  organizationalUnit   within   @o=Internet@ou=Network
  778. Information.
  779.  
  780.   objectClass= organizationalUnit
  781.   organizationalUnitName= AS numbers
  782.   description= root of Autonomous System number space
  783.  
  784. Similar to blocks of IP  network  numbers,  blocks  of  AS  numbers  are
  785. sometimes  delegated  to  another registry. This is expressed by asBlock
  786. objects.  These objects come below the root of the AS number space.  All
  787.  
  788.  
  789.  
  790. Expires: March 1, 1994                                       [Page 12]
  791.  
  792.  
  793.  
  794.  
  795.  
  796. Internet Draft                 OSI-DS 38                  September 1993
  797.  
  798.  
  799. AS  numbers  falling into such a block are stored as subordinates of the
  800. block. An AS block may have smaller AS blocks underneath  if  delegation
  801. is extended.
  802.  
  803.  
  804. 4.4 Relationship to organizational entries
  805.  
  806. Organizational information (i.e. white-pages-like information  about  an
  807. organization, its departments and employees) occurs at several places in
  808. the network DIT - [org of IP-Number, org of  AS-Number,  org  of  Admin-
  809. contact,   However,   it   will  be  basically  mastered  [administered,
  810. maintained] by the  organization  itself  in  the  Directory  Management
  811. Domain  (DMD) over which the organization has the authority.  This gives
  812. rise to some tricky problems - a typical example is that of a NIC  which
  813. holds the AS, DNS, IP, ...  subtrees of the DIT.
  814.  
  815. A good strategy would avoid  explicit  duplication  of  information.  By
  816. explicit   duplication  of  information  we understand information being
  817. duplicated outside the  directory  framework,  e.g.  by  having  several
  818. master  entries  for one and the same piece of information. The only way
  819. to avoid duplication would be to have  relevant  entries  point  to  the
  820. pertinent organizational entry for organizational information. But since
  821.   o most organizations do not, as yet, have an entry in the DIT and
  822.   o the reliability of the access to an organizations DIT when
  823.     stored in a remote DSA cannot be  taken  for granted,
  824. the  following  framework  is  adopted  to  accomodate  the  conflicting
  825. requirements /conditions.
  826.  
  827.   o A copy of all the necessary organization-info is retained
  828.     at the NICs DSA. Since only  the  necessary info will be kept
  829.     the NIC will not be burdened to act as the repository of the
  830.     organizations DIT. These objects may be  kept in  a  separate
  831.     subtree  of  affiliated-organizations [organizations
  832.     affiliated to the NIC]. Though the affiliated organizations node
  833.     does not really represent a locality, it is suggested to define
  834.     the node as objectClass locality. This does not break the
  835.     Directory schema when entries of organizations shall become
  836.     subordinate to the NICs organization's entry.
  837.   o The problem of information duplication/consistency will arise  when
  838.     organizational DITs/DSAs do come into existence. At that stage a
  839.     shadowing  mechanism  which  will  attempt  to  maintain  the  data
  840.     consistency may be resorted to. The X.500/ISO 9594(1993)
  841.     implementations are expected  to provide appropriate shadowing
  842.     mechanisms along X.525.
  843.  
  844. It may be noted that what is suggested is not a duplication of an entire
  845. white-pages-like  structure  at  the  NIC.  It  suggests  an "affiliated
  846. organizations node". The entries under this node  will  be  organization
  847. objects  with  a  limited  number of attributes, i.e. the  attributes to
  848. hold  the  organization  info  necessary  for  the  NIC:  nothing  more,
  849. nothing  less.   Operationally,  and  content wise the NIC DSA will hold
  850. exactly the amount  of  info  that  is  desired  by  the  NIC.  When  an
  851. organization  sets  up its DSA and when the organization informs the NIC
  852. about it, the NIC will set  up the  shadowing   arrangement   to  obtain
  853.  
  854.  
  855.  
  856. Expires: March 1, 1994                                       [Page 13]
  857.  
  858.  
  859.  
  860.  
  861.  
  862. Internet Draft                 OSI-DS 38                  September 1993
  863.  
  864.  
  865. info on changes of interest [and forget about it].
  866.  
  867. It   may   be   emphasized   that   the    entries    under   affiliated
  868. organizations   are  physical  entities [replicated and refined from the
  869. Master entries, if and when they exist...] rather than alias entries. If
  870. a  NIC dislikes  the  idea of  users  poring  over  the  entries  in the
  871. affiliated  organizations  -  appropriate   access   control   can    be
  872. applied.   Though  duplication  is unavoidable, the proposal attempts to
  873. make it transparent, by delegating the responsibility of maintaining the
  874. integrity to the Directory.
  875.  
  876. This issue is discussed in greater detail in a separate document [DEP].
  877.  
  878.  
  879. 5. Security Considerations
  880.  
  881. Security Considerations are not discussed in this Draft.
  882.  
  883.  
  884. 6. Author's Addresses
  885.  
  886.      Thomas Johannsen
  887.      Dresden University of Technology
  888.      Institute of Communication Technology
  889.      D-01062 Dresden, GERMANY
  890.      Phone: +49-351-463-4621
  891.      EMail: Thomas.Johannsen@ifn.et.tu-dresden.de
  892.  
  893.      Glenn Mansfield
  894.      AIC Systems Laboratories
  895.      6-6-3 Minami Yoshinari, Aoba-ku
  896.      Sendai 989-32, JAPAN
  897.      Phone: +81-22-279-3310
  898.      EMail: glenn@aic.co.jp
  899.  
  900.      Mark Kosters
  901.      Network Solutions
  902.      EMail: markk@internic.net
  903.  
  904.      Srinivas Sataluri
  905.      AT&T Bell Laboratories
  906.      EMail: sri@qsun.att.com
  907.  
  908.  
  909. References
  910.  
  911. [DEP]       Mansfield, G., Th. Johannsen, J. Murai:
  912.             Deployment Strategy for the Directory in the Internet;
  913.             Work in Progress, July 1993.
  914.  
  915. [InNIC]     Kosters, M., S. Sataluri:
  916.             Representing Registration Information in the X.500 Directory;
  917.             Draft proposal, March 1993.
  918.  
  919.  
  920.  
  921.  
  922. Expires: March 1, 1994                                       [Page 14]
  923.  
  924.  
  925.  
  926.  
  927.  
  928. Internet Draft                 OSI-DS 38                  September 1993
  929.  
  930.  
  931. [ND]        Mansfield, G., Th. Johannsen, M. Knopper:
  932.             Charting Networks in the Directory;
  933.             OSI-DS WG document OSI-DS-37, February 1993.
  934.  
  935. [OSI-DS 19] Weider, C., M. Knopper, R. Lang:
  936.             Interim Directory Tree Structure for Network
  937.             Infrastructure Information;
  938.             OSI-DS WG document OSI-DS-19, April 1991.
  939.  
  940. [OSI-DS 25] Hardcastle-Kille, S.E.:
  941.             Representing the Real World in the OSI Directory;
  942.             OSI-DS WG document OSI-DS-25, February 1992.
  943.  
  944. [RFC 1155]  Rose, M.T., K. McCloghrie:
  945.             Structure and identification of management information
  946.             for TCP/IP-based internets;
  947.             RFC 1155, May 1990.
  948.  
  949. [RFC 1274]  Barker, P., S. Kille:
  950.             The COSINE and Internet X.500 Schema
  951.             RFC 1274, November 1991.
  952.  
  953. [RFC 1278]  Hardcastle-Kille, S.E.:
  954.             A string encoding of Presentation Address;
  955.             RFC 1278, November 1991.
  956.  
  957. [RFC 1287]  Clark, D., L. Chapin, V. Cerf, R. Braden, R. Hobby:
  958.             Towards the Future Internet Architecture;
  959.             RFC 1287, December 1991.
  960.  
  961. [RFC 1338]  Fuller, V., T. Li, J.Y. Yu, K. Varadhan:
  962.             Supernetting: An address assignment and aggregation
  963.             strategy.
  964.             RFC 1338, June 1992.
  965.  
  966. [RFC 1466]  Gerich, E.:
  967.             Guidelines for Management of IP Address Space;
  968.             RFC 1466, May 1993.
  969.  
  970. [RIPE-81]   Bates, T., J.-M. Jouanigot, D. Karrenberg,
  971.             P. Lothberg, M. Terpstra:
  972.             Representation of IP Routing Policies in the RIPE Database;
  973.             Document ripe-81, February 1993.
  974.  
  975. [SPP]       Johannsen, Th., G. Mansfield:
  976.             The Soft Pages Project;
  977.             OSI-DS WG document OSI-DS-39, February 1993.
  978.  
  979. [X.500-88]  CCITT:
  980.             The Directory - Overview of Concepts, Models and
  981.             Services
  982.             Recommmendations X.500 - X.521, 1988.
  983.  
  984.  
  985.  
  986.  
  987.  
  988. Expires: March 1, 1994                                       [Page 15]
  989.  
  990.  
  991.  
  992.  
  993.  
  994. Internet Draft                 OSI-DS 38                  September 1993
  995.  
  996.  
  997. Appendix: OID tables
  998.  
  999. This appendix lists object identifiers for object classes and attributes
  1000. type defined in [ND] and this document.
  1001.  
  1002. OIDs are given in quipu-oidtable format to make it easy  for  people  to
  1003. include  them  into  their  pilots.  We  would  like  to thank the ISODE
  1004. Consortium  for  providing  us  with  a  node  OID.  Please  note   that
  1005. definitions  given  below  have  no  connection  to the ISODE Consortium
  1006. though.
  1007.  
  1008. IMPORT from oidtable.gen:
  1009.  
  1010. iso:                            1
  1011. identifiedOrganization:         iso.3
  1012. dod:                            identifiedOrganization.6
  1013. internet:                       dod.1
  1014. private:                        internet.4
  1015. enterprises:                    private.1
  1016. isode-consortium:               enterprises.453
  1017.  
  1018.  
  1019. -- localoidtable.gen
  1020.  
  1021. network-objects:                isode-consortium.11
  1022. id-nw-oc:                       network-objects.1
  1023. id-nw-at:                       network-objects.2
  1024. id-nw-as:                       network-objects.3
  1025. ipStringSyntax:                 ip-nw-as.1
  1026.  
  1027.  
  1028. -- localoidtable.oc
  1029.  
  1030. # general class definitions
  1031.  
  1032. CommunicationObject: id-nw-oc.1 : top : \
  1033.          : \
  1034.          adminContact, technContact, description
  1035.  
  1036. PhysicalCommunicationObject: id-nw-oc.2 : CommunicationObject : \
  1037.         : \
  1038.         owner, localityName, ICO
  1039.  
  1040. ImageCommunicationObject: id-nw-oc.3 : CommunicationObject : \
  1041.         : \
  1042.         imageType, imageOf
  1043.  
  1044. # physical communication elements
  1045.  
  1046. network: id-nw-oc.4 : PhysicalCommunicationObject : \
  1047.         networkName : \
  1048.         externalGateway, nwType, media, speed, traffic, \
  1049.         configurationDate, configurationHistory
  1050.  
  1051.  
  1052.  
  1053.  
  1054. Expires: March 1, 1994                                       [Page 16]
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060. Internet Draft                 OSI-DS 38                  September 1993
  1061.  
  1062.  
  1063. node: id-nw-oc.5 : PhysicalCommunicationObject : \
  1064.         nodeName : \
  1065.         typeOfMachine, OS
  1066.  
  1067. networkInterface: id-nw-oc.6 : PhysicalCommunicationObject : \
  1068.         networkInterfaceName : \
  1069.         networkInterfaceAddress, connectedNetwork
  1070.  
  1071. # image communication elements
  1072.  
  1073. networkImage: id-nw-oc.7 : ImageCommunicationObject : \
  1074.         : \
  1075.         externalGateway, speed, traffic, charge
  1076.  
  1077. nodeImage: id-nw-oc.8 : ImageCommunicationObject : \
  1078.         :
  1079.  
  1080. networkInterfaceImage: id-nw-oc.9 : ImageCommunicationObject : \
  1081.         : \
  1082.         networkInterfaceAddress, connectedNetwork
  1083.  
  1084. # IP image elements
  1085.  
  1086. ipNetworkImage: id-nw-oc.10 : networkImage : \
  1087.         ipNetworkImageName, ipNwNumber, ipNwMask : \
  1088.         associatedDomain, inAddrServer, asNumber, \
  1089.         provider, onlineDate
  1090.  
  1091. ipNodeImage: id-nw-oc.11 : nodeImage : \
  1092.         ipNodeName : \
  1093.         protocol, domainName
  1094.  
  1095. ipNetworkInterfaceImage: id-nw-oc.12 : networkInterfaceImage : \
  1096.         ipNetworkInterfaceName : \
  1097.         ipNwMask
  1098.  
  1099. as: id-nw-oc.13 : ImageCommunicationObject : \
  1100.         asNumber : \
  1101.         asName, asIn, asOut, asDefault, asGuardian, \
  1102.         lastModifiedDate
  1103.  
  1104. # number assignement objects
  1105.  
  1106. assignedNumberClass: id-nw-oc.14 : top : \
  1107.         : \
  1108.         assBy, assTo, assDate, nicHandle, relNwElement, \
  1109.         description
  1110.  
  1111. delegatedBlock: id-nw-oc.15 : AssignedNumberClass : \
  1112.         delegatedBlockName, lowerBound, upperBound :
  1113.  
  1114. ipGroup: id-nw-oc.16 : AssignedNumberClass : \
  1115.         ipGroupName, ipNwMask :
  1116.  
  1117.  
  1118.  
  1119.  
  1120. Expires: March 1, 1994                                       [Page 17]
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126. Internet Draft                 OSI-DS 38                  September 1993
  1127.  
  1128.  
  1129. ipReference: id-nw-oc.17 : AssignedNumberClass : \
  1130.         ipReferenceName :
  1131.  
  1132. asBlock: id-nw-oc.18 : AssignedNumberClass : \
  1133.         asBlockName, asLowerBound, asUpperBound :
  1134.  
  1135. asReference: id-nw-oc.19 : AssignedNumberClass : \
  1136.         asNumber :
  1137.  
  1138.  
  1139.  
  1140. -- localoidtable.at
  1141.  
  1142. adminContact:           id-nw-at.1      :DN
  1143. technContact:           id-nw-at.2      :DN
  1144. ICO:                    id-nw-at.3      :DN
  1145. imageType:              id-nw-at.4      :caseIgnoreString
  1146. imageOf:                id-nw-at.5      :DN
  1147. networkName,nw:         id-nw-at.6      :caseIgnoreString
  1148. externalGateway:        id-nw-at.7      :DN
  1149. nwType:                 id-nw-at.8      :caseIgnoreString
  1150. media:                  id-nw-at.9      :caseIgnoreString
  1151. speed:                  id-nw-at.10     :numericString
  1152. traffic:                id-nw-at.11     :numericString
  1153. configurationDate:      id-nw-at.12     :utcTime
  1154. configurationHistory:   id-nw-at.13     :caseIgnoreString
  1155. nodeName,nd:            id-nw-at.14     :caseIgnoreString
  1156. typeOfMachine:          id-nw-at.15     :caseIgnoreString
  1157. OS:                     id-nw-at.16     :caseIgnoreString
  1158. networkInterfaceName,ni: id-nw-at.17    :caseIgnoreString
  1159. networkInterfaceAddress: id-nw-at.18    :caseIgnoreString
  1160. connectedNetwork:       id-nw-at.19     :DN
  1161. charge:                 id-nw-at.20     :numericString
  1162. ipNetworkImageName,IPnw: id-nw-at.21    :caseIgnoreString
  1163. ipNwNumber:             id-nw-at.22     :caseIgnoreString
  1164. ipNwMask:               id-nw-at.23     :caseIgnoreString
  1165. inAddrServer:           id-nw-at.24     :DN
  1166. asNumber,asN:           id-nw-at.25     :integerString
  1167. provider:               id-nw-at.26     :DN
  1168. onlineDate:             id-nw-at.27     :utcTime
  1169. ipNodeName,IPnd:        id-nw-oc.28     :caseIgnoreString
  1170. protocol:               id-nw-at.29     :caseIgnoreString
  1171. domainName:             id-nw-at.30     :caseIgnoreString
  1172. ipNetworkInterfaceName,IPni: id-nw-at.31 :caseIgnoreString
  1173. asName:                 id-nw-at.32     :caseIgnoreString
  1174. asIn:                   id-nw-at.33     :caseIgnoreString
  1175. asOut:                  id-nw-at.34     :caseIgnoreString
  1176. asDefault:              id-nw-at.35     :caseIgnoreString
  1177. asGuardian:             id-nw-at.36     :DN
  1178. assBy:                  id-nw-at.37     :DN
  1179. assTo:                  id-nw-at.38     :DN
  1180. assDate:                id-nw-at.39     :utcTime
  1181. nicHandle:              id-nw-at.40     :caseIgnoreString
  1182. relNwElement:           id-nw-at.41     :DN
  1183.  
  1184.  
  1185.  
  1186. Expires: March 1, 1994                                       [Page 18]
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192. Internet Draft                 OSI-DS 38                  September 1993
  1193.  
  1194.  
  1195. delegatedBlockName,dbl: id-nw-at.42     :caseIgnoreString
  1196. lowerBound:             id-nw-at.43     :caseIgnoreString
  1197. upperBound:             id-nw-at.44     :caseIgnoreString
  1198. ipGroupName,IPgr:       id-nw-at.45     :caseIgnoreString
  1199. ipReferenceName,IPref:  id-nw-at.46     :caseIgnoreString
  1200. asBlockName,asBl:       id-nw-at.47     :caseIgnoreString
  1201. asLowerBound:           id-nw-at.48     :integerString
  1202. asUpperBound:           id-nw-at.49     :integerString
  1203.  
  1204.  
  1205.  
  1206.  
  1207.  
  1208.  
  1209.  
  1210.  
  1211.  
  1212.  
  1213.  
  1214.  
  1215.  
  1216.  
  1217.  
  1218.  
  1219.  
  1220.  
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.  
  1235.  
  1236.  
  1237.  
  1238.  
  1239.  
  1240.  
  1241.  
  1242.  
  1243.  
  1244.  
  1245.  
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251.  
  1252. Expires: March 1, 1994                                       [Page 19]
  1253.  
  1254.  
  1255.